查看了一些博客,记录一下自己实践后有效的方法。
比如,如果我们想合并 最近三个 提交:
- 首先查看提交历史:
git log
1 | commit 30ebe082dbb2390af801d356c07e9d7ecf1f1f8c (HEAD -> V3, origin/V3)...... |
- 合并命令
git rebase -i HEAD~3
执行了 rebase
命令之后,会弹出一个窗口:
1 | pick 3ca6ec3 '判断Zookeeper服务目录是否存在,否则创建' |
- 将除了第一个的
pick
,其他都改为s
或squash
1 | pick 3ca6ec3 '判断Zookeeper服务目录是否存在,否则创建' |
修改后保存退出,这里操作和 Vim 是一样的
git log
一下,发现提交已经合并。到这里以后,git status
后会看到,提示让你git pull
一下,千万不要这样做!否则你会发现这三条白合并了,还平白多了两条 commit强制 push 上去
git push -f
。要确保强制push不会覆盖了别人的代码,如果这个分支只有你维护那就可以为所欲为了
到此,合并多个远程分支成功~